Embodiments of the present invention relate generally to the control of delay lines, and more particularly to the highly efficient calibration of programmable delay lines. Programmable delay lines are very important in programmable logic devices and other configurable devices. The delays they provide can be varied to compensate for skew among various signal paths to aid in the accurate reception and transmission of data. That is, their delays can be adjusted to compensate for errors such as mismatches in delays among two or more signal paths.
Many types of programmable delay lines may be employed by programmable logic devices or other configurable devices. Their delays may be adjusted by setting bits in a digital word of some length, where the bits control multiplexers, current sources, or other circuits.
Modern programmable logic devices and other configurable circuits incorporate many such programmable delay lines. For example, each input and output circuit may have one such programmable delay line associated with it. Since there are so many programmable delay lines, it is very desirable to efficiently be able to program them. For example, the routing resources on a programmable logic device are limited in number. Thus, it is desirable that many delay lines be programmable without consuming an excessive amount of these resources.
These programmable delay lines often need to be adjusted during device operation. For example, device temperature or supply voltage may change. This may result in changes in the delays provided by the delay elements. Thus, it is desirable to be able to recalibrate or otherwise adjust these delay lines during device operation without needing to reconfigure or cease operation of the programmable delay element.
Thus, what is needed are circuits, methods, and apparatus that provide the highly efficient configuration of multiple delay elements. It is also desirable that the delay elements be updated simultaneously without the need to reset or halt operation of a device or system that includes the delay elements.